Racket do

Racket 的 do 表达式提供了一种执行具有状态的迭代的方式。它允许您定义一组迭代变量,并在每次迭代时更新它们的值,直到满足某个终止条件。

以下是 do 表达式的基本结构和用法示例:

基本结构

(do ([var1 init1 step1]
     [var2 init2 step2]
     ...)
    (end-test-expr final-expr)
  body ...)

注意括号:final-expr 和 end-test-expr 要在同一个括号里面!

示例代码

以下代码使用 do 表达式计算 1 到 10 的和:

(define sum
  (do ([i 1 (+ i 1)]
       [total 0 (+ total i)])
      ((> i 10) total)))
      
display sum ; 输出 '55

代码解释:


本文作者:Maeiee

本文链接:Racket do

版权声明:如无特别声明,本文即为原创文章,版权归 Maeiee 所有,未经允许不得转载!


喜欢我文章的朋友请随缘打赏,鼓励我创作更多更好的作品!